package com.fengye.middleware.rabbitmq.boot.dead.letter;

import lombok.extern.slf4j.Slf4j;
import org.springframework.amqp.rabbit.annotation.RabbitListener;
import org.springframework.messaging.handler.annotation.Payload;
import org.springframework.stereotype.Component;

/**
 * 死信队列监听者
 * @author sky
 * @date 2021年06月10日 10:53 上午
 */

@Component
@Slf4j
public class DeadConsumer {


    @RabbitListener(queues = "${mq.consumer.real.queue.name}", containerFactory = "singleListenerContainer")
    public void consumerMsg(@Payload DeadLetterInfo info){
        try {
            log.info("死信队列 接收对象类型的消息，内容为 {}", info);

            // TODO: 其他业务逻辑
        } catch (Exception e) {
            log.info("死信队列 接收对象类型的消息出错了", e.fillInStackTrace());
        }
    }
}
